package com.feng.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.feng.domain.ResponseResult;
import com.feng.domain.dto.UserSaveDto;
import com.feng.domain.entity.User;
import com.feng.domain.vo.UserUpdateVo;


/**
 * 用户表(User)表服务接口
 *
 * @author makejava
 * @since 2022-10-11 23:04:10
 */
public interface UserService extends IService<User> {
    /**
     * 获取个人信息
     * @return
     */
    ResponseResult userInfo();

    /**
     * 更新用户信息
     * @return
     */
    ResponseResult updateUserInfo(User user);

    /**
     * 注册用户
     * @param user
     * @return
     */
    ResponseResult register(User user);
   //用户列表的分页查询
    ResponseResult selectUserPage(User user, Integer pageNum, Integer pageSize);
    //判断用户名是否已存在数据库
    boolean checkUserNameUnique(String userName);
    //判断手机号是否已存在数据库
    boolean checkPhoneUnique(String phonenumber);
    //判断邮箱是否已存在数据库
    boolean checkEmailUnique(String email);
   //新增用户，关联user及userRole两张表
    ResponseResult addUser(UserSaveDto userSaveDto);
   //根据用户id查询用户信息，需要关联表
    ResponseResult getDetailByUserId(Long id);
    //更新用户信息
    ResponseResult updateUser(UserUpdateVo userUpdateVo);
    //修改密码接口
    ResponseResult updatePas(User user);
}

